package com.dyzx.hbb.modules.fcxs.vo;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 订单更新视图对象
 *
 * @author AI Assistant
 * @date 2023-07-10
 */
@Data
@Schema(description = "订单更新视图对象")
public class FcxsOrderUVO implements Serializable {
    
    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @Schema(description = "主键ID")
    @JsonProperty("id")
    @NotNull(message = "主键ID不能为空")
    private Long id;

    @Schema(description = "房源编号")
    @JsonProperty("house_id")
   // @NotNull(message = "房源编号不能为空")
    private Long houseId;

    /**
     * 客户编号
     */
    @Schema(description = "客户编号")
    @JsonProperty("customer_id")
 //   @NotNull(message = "客户编号不能为空")
    private Long customerId;
    /**
     * 分类 字典信息：fcxs_house_category
     */
    @Schema(description = "分类")
    @JsonProperty("category")
  //  @NotNull(message = "分类不能为空")
    private Integer category;
    /**
     * 付款方式 字典信息：sys_pay_mode
     */
    @Schema(description = "付款方式")
    @JsonProperty("pay_mode")
 //   @NotNull(message = "付款方式不能为空")
    private Integer payMode;

    /**
     * 认购协议（多张）
     */
    @Schema(description = "认购协议")
    @JsonProperty("subscription")
    //  @NotNull(message = "认购协议不能为空")
    private String subscription;

    /**
     * 买卖合同（多张）
     */
    @Schema(description = "买卖合同")
    @JsonProperty("contract")
    private String contract;

    /**
     * 合同日期（毫秒级时间戳）
     */
    @Schema(description = "合同日期")
    @JsonProperty("contract_date")
    private Long contractDate;

    /**
     * 价格
     */
    @Schema(description = "价格")
    @JsonProperty("price")
    private Integer price;

    /**
     * 备注
     */
    @Schema(description = "备注")
    @JsonProperty("remark")
    private String remark;

    /**
     * 状态 字典信息：sys_global_status
     */
    @Schema(description = "状态")
    @JsonProperty("status")
  //  @NotNull(message = "状态不能为空")
    private Integer status;
}
